/*
 * grupo.java
 *
 * Created on 15 de febrero de 2008, 06:35 PM
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package BE;

import java.util.ArrayList;

/**
 *
 * @author Billy
 */
public class grupo {
    int numeroJugadores;
    ArrayList<jugadorxDivision> jugadoresxGrupo;
    double puntajedeGrupo;
    ArrayList<jugadorxDivision> jugadores;
    String tipoGrupo; /**/    
    
    /** Creates a new instance of grupo */
    public grupo() {
    }
    
    public grupo(double puntaje, ArrayList<jugadorxDivision> jugadores){
        this.numeroJugadores = 0;
        this.puntajedeGrupo = puntaje;
        this.jugadores = jugadores;
        jugadoresxGrupo = new ArrayList<jugadorxDivision>();
        this.tipoGrupo = "homogeneo";
    }  
    
    public void ponerTipoGrupo(String tipo){
        this.tipoGrupo = tipo;
    }
    public String dameTipoGrupo(){
        return tipoGrupo;
    }
    public ArrayList<jugadorxDivision> dameListaJugadoresdeGrupo(){
        return this.jugadoresxGrupo;
    } 
   
    public boolean estaJugadorenGrupo(jugadorxDivision persona){
       int numA=0, numB=0; 
       for(jugadorxDivision player: jugadoresxGrupo){
           numA= persona.getNumeroId();
           numB= player.getNumeroId();           
           if(numA == numB) return true;
       }
       return false;
    }    
     
    public void agregarJugador(jugadorxDivision player){
            this.jugadoresxGrupo.add(player);
            this.numeroJugadores++;        
    }    
    
      
    public void agregarJugadoresconPuntaje(double puntaje){
        for(jugadorxDivision player: jugadores){
            if(player.getPuntajeTotal() == puntaje)
                agregarJugador(player);
        }
    }
    
//    void printGrupo(){
//        System.out.println("Grupo["+this.puntajedeGrupo+"]");
//        for(jugador player: this.jugadoresxGrupo){
//            System.out.println(player.dameNombre()+"["+player.dameIdPareo()+"]");            
//        }
//    }
    
    public int dameNumeroJugadoresenGrupo(){
        return this.numeroJugadores;
    }
    public double damePuntajeGrupo(){
        return this.puntajedeGrupo;
    }
    public void quitarJugador(int idPareoJugador){
        this.jugadoresxGrupo.remove(idPareoJugador);
        this.numeroJugadores--;
    }
    public void quitarJugador(jugadorxDivision objJugador){
        this.jugadoresxGrupo.remove(objJugador);
        this.numeroJugadores--;        
    }    
    public void printGrupo(){
        System.out.println("Grupo["+this.puntajedeGrupo+"]");
        for(jugadorxDivision player: this.jugadoresxGrupo){
            System.out.println(player.getApellidoNombres()+"["+player.getNumeroId()+"]");            
        }
    }    
}
